Auto-contrast viewfinder for an indicia reader

ABSTRACT

Viewfinders for indicia-readers and/or mobile devices running indicia reading applications allow a user to position the reader with respect to the indicia. A display presents a real-time image of the camera as a background, while simultaneously presenting a graphical overlay that is superimposed on the background. The graphical overlay provides a user messages via text or graphics. Choosing a single color for the messages on the graphical overlay can lead to visibility problems in some imaging scenarios. The present invention provides a method and device to provide automatic contrast adjustment of these message based on the image characteristics beneath or around each message in order to maintain visibility in all imaging scenarios.

FIELD OF THE INVENTION

The present invention relates to the field of imaging indicia readers and more specifically to an auto-contrast viewfinder to facilitate alignment and display information.

BACKGROUND

A viewfinder is often used for aligning an indicium (i.e., barcode) for reading (i.e., scanning). The viewfinder provides real-time images from the reader's camera to help a user align the device (e.g., imaging scanner, smartphone, smartwatch, etc.) for scanning. A graphical overlay may be superimposed onto the real-time images in order to present messages (e.g., instructions, information, aids, etc.) to a user. The graphical overlay is a “layer” that that has visible messages (i.e., single color messages) on a transparent background. When the messages are a single color, it is hard to see them in certain imaging scenarios (e.g., white text on a white image). Utilizing the live camera video feed to position a barcode is an intuitive way to scan barcodes, but this interface loses its effectiveness when the messages are hard to read. Therefore, a need exists for a method to analyze the background behind the text/graphics messages and adjust their color in real-time to provide good visibility.

SUMMARY

Accordingly, in one aspect, the present invention embraces a method for improving the visibility of a graphical overlay in a barcode scanning application running on a mobile device configured with a camera. The method includes the step of capturing an image of a field of view. The method also includes the step of rendering a graphical overlay. The graphical overlay includes a message on a transparent background that covers a specific message area in the image beneath it when the graphical overlay is superimposed on the image. The message area in the image is analyzed to derive an image metric used for adjusting the pixel values of the message. The method further includes the step of displaying the graphical overlay superimposed on the image on the mobile device's display.

In an exemplary embodiment, the graphical overlay comprises a plurality of messages, with each message covering a unique message area, and each message adjusted individually based on its own unique image metric.

In another exemplary embodiment, the method's steps of rendering, analyzing, adjusting, and displaying are repeated for each image in a real-time video stream of images.

In another exemplary embodiment, the message is text, while in still another exemplary embodiment the message is a single-colored graphic.

In another exemplary embodiment, the image metric includes a quantified value related to the image's intensity and/or color in the message area.

In another exemplary embodiment, the pixel values of the message include an RGB color.

In another exemplary embodiment, the image metric comprises an average pixel intensity over the message area.

In another exemplary embodiment, the pixel values of the message are adjusted to a minimum intensity when the image metric exceeds a threshold. Alternatively, the pixel values of the message are adjusted to a maximum intensity when the image metric does not exceed a threshold.

In another aspect, the present invention embraces a mobile device. The mobile device includes a camera for capturing images of a field of view. The mobile device also includes a display for displaying images from the camera and a graphical overlay. The graphical overlay includes messages superimposed on the images. The mobile device also includes a memory for storing an indicia-reading application and a processor configured by the indicia-reading application. The processor is configured to analyze the pixel characteristics in areas surrounding the message and to adjust a color of the message to improve the message's visibility.

In an exemplary embodiment, the mobile device captures a real-time video stream of image frames.

In another exemplary embodiment, the graphical overlay includes one or more messages on a transparent background.

In another exemplary embodiment, the graphical overlay is text and in another exemplary embodiment, the graphical overlay is a single color graphic.

In another exemplary embodiment, the pixel characteristics analyzed by the processor include an average pixel intensity; while in another exemplary embodiment, the pixel characteristics include an average color.

In another exemplary embodiment, the area surrounding a message includes a message area and a margin area. The message area includes a rectangular area of pixels containing only the message, while the margin area includes a frame of pixels that surround the message area. In some exemplary embodiments, this margin area is zero (i.e., no margin area).

In yet another aspect, the present invention embraces an imaging barcode scanner. The imaging barcode scanner includes a camera module for capturing images of a field of view. The imaging barcode scanner also includes a viewfinder module for displaying real-time images from the camera overlaid with messages. The viewfinder module changes the color characteristics of the messages in response to the color characteristics of the images.

In an exemplary embodiment, the imaging barcode scanner captures a video stream of image frames and changes the color characteristics of the graphical messages in real time.

In another exemplary embodiment, the imaging barcode scanner changes the color characteristics of the message to contrast maximally with the color of the image behind each message.

In another exemplary embodiment, the messages displayed by the viewfinder include an aiming graphic to help a user align a barcode.

The foregoing illustrative summary, as well as other exemplary objectives and/or advantages of the invention, and the manner in which the same are accomplished, are further explained within the following detailed description and its accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1a graphically depicts and exemplary embodiment of an auto-contrast viewfinder on a mobile device in a first exemplary imaging scenario.

FIG. 1b graphically depicts and exemplary embodiment of an auto-contrast viewfinder on a mobile device in a second exemplary imaging scenario.

FIG. 2 graphically depicts two exemplary messages on a barcode scanning application running on a mobile device and depicts exemplary message areas associated with the messages.

DETAILED DESCRIPTION

The present invention embraces an auto-contrast viewfinder to facilitate indicia reading. The auto-contrast viewfinder can be embodied in a variety of ways. In one embodiment, the auto-contrast viewfinder is a feature of an indicia-reading application run on a mobile device (e.g., smartphone or smartwatch). In another embodiment, the auto-contrast viewfinder is a module functioning as part of an imaging barcode scanner. In either case, the auto-contrast viewfinder helps a user align and scan indicia (e.g., barcodes).

The auto-contrast viewfinder provides a user with a real-time preview of the camera's field of view on a display. The viewfinder also renders a transparent layer superimposed over the background to provide a user with messages, instruction, and/or guidance related to the application (i.e., barcode scanning).

The visibility of the messages displayed on the transparent layer may change as the camera is pointed towards different targets. For example, white text overlaid on the camera's images may be easily seen when dark targets are imaged but may be difficult to see when lighter targets are imaged. Analyzing the area behind the message and changing the message's color in real-time eliminates visibility problems and leads to a more functional viewfinder.

FIG. 1a and FIG. 1b graphically illustrate a mobile device 1 configured with a camera and running a barcode scanning application with an auto-contrast viewfinder. Two imaging scenarios are shown.

In a first imaging scenario, shown in FIG. 1a , a light colored object 2 rests on a dark surface 3. The mobile device 1 takes an image 4 of a field of view positioned to contain the light colored object 2. The image 4 is displayed on the mobile device's display. The barcode scanning application generates a graphical overlay that is transparent except for one or more messages, which are displayed over (i.e., superimposed on) the image. The messages may be text 5 and/or single colored graphics (e.g., cross-hair) 6.

In a second imaging scenario, shown in Figure lb, a dark colored object 7 rests on a light colored surface 8. Here, the image 4 and messages 5,6 are displayed on the mobile device's display. The difference between the two scenarios is in the color of the messages. In FIG. 1a the cross hair 6 is black and the text 5 is white, while in FIG. 1b the cross hair 6 is white and the text 5 is black. The color of these messages is adjusted to improve contrast with the background in the area of the message, thereby making the messages more readable and understandable.

Adjusting a message's color to improve the message's visibility requires an analysis of the area in the camera's image behind and/or around the message (i.e., the message area). When more than one message is present, typically the color of each message is controlled independently to insure that the visibility remains optimized for each message in all imaging scenarios. In some possible embodiments, however, the color adjustment for one message could be linked to another message's color adjustment (e.g., made identical). Linking the color adjustment for different messages could be helpful for adjusting the color for small and/or closely spaced messages.

FIG. 2 shows a mobile device displaying an exemplary graphical overlay. In this embodiment, there are two messages: (i) a text word, “message” 5 and (ii) a cross-hair graphic 6. The area in the image beneath a message is known as the message area. In this example, the text 5 covers a first message area 9, and the cross-hair graphic 6 covers a second message 10 area in the image.

Typically, the message area size is made to contain only the message. In another possible embodiment, however, this area could be expanded using an additional area (i.e., margin area). For example, a frame of pixels surrounding either (or both) message area 9,10 could increase the area used for analysis. The frame's size may be adjustable and may be adjusted symmetrically or asymmetrically around the message. In some possible embodiments, a single message may have more than one message area. For example, a large message covering much of the image could be divided into multiple message areas. In general, the area defined for a message is configurable and may be application specific. In addition, the mapping of the areas from the graphical overlay to the image may require additional processing since these layers may have different resolutions and/or sizes.

The pixels within each defined message area may be analyzed to produce an image metric associated with the message area. Typically, each message area has a different image metric but in some possible embodiments, the image metrics from different areas could be combined. For the exemplary embodiment shown in FIG. 2a , two image metrics are derived: one corresponding to the first message area 9 and one corresponding second message area 10.

The image metric is a value that can be used for adjusting a message's color. In one possible embodiment, the image metric could be compared to a threshold. The results of this comparison could trigger the message color to change in order to remain highly visible. The threshold comparison could happen on a video frame-by-frame basis. In this way, the color change can be considered real-time. Typically, a user can observe the messages in the graphical overlay changing in response to the changing images of the video stream.

As an example consider an 8-bit gray scale image with pixel values (i.e., intensities) that have a range of 0-255. In this case, an image metric for a message area may be defined as the average pixel intensity. In operation, an image metric for each message area in each image frame is computed. This image metric may then trigger a color change in the message. For example, the image metric may be compared to a threshold as a means for adjusting the message color. For this example, if the image metric is analyzed and found to be less than or equal to 127 (i.e., 0-127), then the message area would be considered “dark”, and as a result, the corresponding message color would be made white (i.e., all message pixels values set equal to 255) to enhance visibility (i.e., contrast). On the other hand, if the image metric is analyzed and found to be greater than 127 (128-255), then this message area would be considered “light”, and as a result, the corresponding message color would be made black (i.e., all message pixels values set equal to 0) to enhance visibility (i.e., contrast). This is the simplest implementation of this concept, the present invention may also be applied to color images and/or involve algorithms that are more complex.

An Image metric typically indicates the average RGB color and/or intensity of the pixels within the message area. Other image characteristics, besides or in addition to, color/intensity may be user to derive an image metric (e.g., hue, saturation, color map, etc.). In addition, algorithms other than averaging may be used to derive an image metric (e.g., weighted averages, median, etc.). What is more, the adjustment of the color typically uses a threshold comparison, though other methods may be used (e.g., multi-threshold, lookup tables, etc.).

To supplement the present disclosure, this application incorporates entirely by reference the following commonly assigned patents, patent application publications, and patent applications:

-   U.S. Pat. No. 6,832,725; U.S. Pat. No. 7,128,266; -   U.S. Pat. No. 7,159,783; U.S. Pat. No. 7,413,127; -   U.S. Pat. No. 7,726,575; U.S. Pat. No. 8,294,969; -   U.S. Pat. No. 8,317,105; U.S. Pat. No. 8,322,622; -   U.S. Pat. No. 8,366,005; U.S. Pat. No. 8,371,507; -   U.S. Pat. No. 8,376,233; U.S. Pat. No. 8,381,979; -   U.S. Pat. No. 8,390,909; U.S. Pat. No. 8,408,464; -   U.S. Pat. No. 8,408,468; U.S. Pat. No. 8,408,469; -   U.S. Pat. No. 8,424,768; U.S. Pat. No. 8,448,863; -   U.S. Pat. No. 8,457,013; U.S. Pat. No. 8,459,557; -   U.S. Pat. No. 8,469,272; U.S. Pat. No. 8,474,712; -   U.S. Pat. No. 8,479,992; U.S. Pat. No. 8,490,877; -   U.S. Pat. No. 8,517,271; U.S. Pat. No. 8,523,076; -   U.S. Pat. No. 8,528,818; U.S. Pat. No. 8,544,737; -   U.S. Pat. No. 8,548,242; U.S. Pat. No. 8,548,420; -   U.S. Pat. No. 8,550,335; U.S. Pat. No. 8,550,354; -   U.S. Pat. No. 8,550,357; U.S. Pat. No. 8,556,174; -   U.S. Pat. No. 8,556,176; U.S. Pat. No. 8,556,177; -   U.S. Pat. No. 8,559,767; U.S. Pat. No. 8,599,957; -   U.S. Pat. No. 8,561,895; U.S. Pat. No. 8,561,903; -   U.S. Pat. No. 8,561,905; U.S. Pat. No. 8,565,107; -   U.S. Pat. No. 8,571,307; U.S. Pat. No. 8,579,200; -   U.S. Pat. No. 8,583,924; U.S. Pat. No. 8,584,945; -   U.S. Pat. No. 8,587,595; U.S. Pat. No. 8,587,697; -   U.S. Pat. No. 8,588,869; U.S. Pat. No. 8,590,789; -   U.S. Pat. No. 8,596,539; U.S. Pat. No. 8,596,542; -   U.S. Pat. No. 8,596,543; U.S. Pat. No. 8,599,271; -   U.S. Pat. No. 8,599,957; U.S. Pat. No. 8,600,158; -   U.S. Pat. No. 8,600,167; U.S. Pat. No. 8,602,309; -   U.S. Pat. No. 8,608,053; U.S. Pat. No. 8,608,071; -   U.S. Pat. No. 8,611,309; U.S. Pat. No. 8,615,487; -   U.S. Pat. No. 8,616,454; U.S. Pat. No. 8,621,123; -   U.S. Pat. No. 8,622,303; U.S. Pat. No. 8,628,013; -   U.S. Pat. No. 8,628,015; U.S. Pat. No. 8,628,016; -   U.S. Pat. No. 8,629,926; U.S. Pat. No. 8,630,491; -   U.S. Pat. No. 8,635,309; U.S. Pat. No. 8,636,200; -   U.S. Pat. No. 8,636,212; U.S. Pat. No. 8,636,215; -   U.S. Pat. No. 8,636,224; U.S. Pat. No. 8,638,806; -   U.S. Pat. No. 8,640,958; U.S. Pat. No. 8,640,960; -   U.S. Pat. No. 8,643,717; U.S. Pat. No. 8,646,692; -   U.S. Pat. No. 8,646,694; U.S. Pat. No. 8,657,200; -   U.S. Pat. No. 8,659,397; U.S. Pat. No. 8,668,149; -   U.S. Pat. No. 8,678,285; U.S. Pat. No. 8,678,286; -   U.S. Pat. No. 8,682,077; U.S. Pat. No. 8,687,282; -   U.S. Pat. No. 8,692,927; U.S. Pat. No. 8,695,880; -   U.S. Pat. No. 8,698,949; U.S. Pat. No. 8,717,494; -   U.S. Pat. No. 8,717,494; U.S. Pat. No. 8,720,783; -   U.S. Pat. No. 8,723,804; U.S. Pat. No. 8,723,904; -   U.S. Pat. No. 8,727,223; U.S. Pat. No. D702,237; -   U.S. Pat. No. 8,740,082; U.S. Pat. No. 8,740,085; -   U.S. Pat. No. 8,746,563; U.S. Pat. No. 8,750,445; -   U.S. Pat. No. 8,752,766; U.S. Pat. No. 8,756,059; -   U.S. Pat. No. 8,757,495; U.S. Pat. No. 8,760,563; -   U.S. Pat. No. 8,763,909; U.S. Pat. No. 8,777,108; -   U.S. Pat. No. 8,777,109; U.S. Pat. No. 8,779,898; -   U.S. Pat. No. 8,781,520; U.S. Pat. No. 8,783,573; -   U.S. Pat. No. 8,789,757; U.S. Pat. No. 8,789,758; -   U.S. Pat. No. 8,789,759; U.S. Pat. No. 8,794,520; -   U.S. Pat. No. 8,794,522; U.S. Pat. No. 8,794,526; -   U.S. Pat. No. 8,798,367; U.S. Pat. No. 8,807,431; -   U.S. Pat. No. 8,807,432; U.S. Pat. No. 8,820,630; -   International Publication No. 2013/163789; -   International Publication No. 2013/173985; -   International Publication No. 2014/019130; -   International Publication No. 2014/110495; -   U.S. Patent Application Publication No. 2008/0185432; -   U.S. Patent Application Publication No. 2009/0134221; -   U.S. Patent Application Publication No. 2010/0177080; -   U.S. Patent Application Publication No. 2010/0177076; -   U.S. Patent Application Publication No. 2010/0177707; -   U.S. Patent Application Publication No. 2010/0177749; -   U.S. Patent Application Publication No. 2011/0202554; -   U.S. Patent Application Publication No. 2012/0111946; -   U.S. Patent Application Publication No. 2012/0138685; -   U.S. Patent Application Publication No. 2012/0168511; -   U.S. Patent Application Publication No. 2012/0168512; -   U.S. Patent Application Publication No. 2012/0193423; -   U.S. Patent Application Publication No. 2012/0203647; -   U.S. Patent Application Publication No. 2012/0223141; -   U.S. Patent Application Publication No. 2012/0228382; -   U.S. Patent Application Publication No. 2012/0248188; -   U.S. Patent Application Publication No. 2013/0043312; -   U.S. Patent Application Publication No. 2013/0056285; -   U.S. Patent Application Publication No. 2013/0070322; -   U.S. Patent Application Publication No. 2013/0075168; -   U.S. Patent Application Publication No. 2013/0082104; -   U.S. Patent Application Publication No. 2013/0175341; -   U.S. Patent Application Publication No. 2013/0175343; -   U.S. Patent Application Publication No. 2013/0200158; -   U.S. Patent Application Publication No. 2013/0256418; -   U.S. Patent Application Publication No. 2013/0257744; -   U.S. Patent Application Publication No. 2013/0257759; -   U.S. Patent Application Publication No. 2013/0270346; -   U.S. Patent Application Publication No. 2013/0278425; -   U.S. Patent Application Publication No. 2013/0287258; -   U.S. Patent Application Publication No. 2013/0292475; -   U.S. Patent Application Publication No. 2013/0292477; -   U.S. Patent Application Publication No. 2013/0293539; -   U.S. Patent Application Publication No. 2013/0293540; -   U.S. Patent Application Publication No. 2013/0306728; -   U.S. Patent Application Publication No. 2013/0306730; -   U.S. Patent Application Publication No. 2013/0306731; -   U.S. Patent Application Publication No. 2013/0307964; -   U.S. Patent Application Publication No. 2013/0308625; -   U.S. Patent Application Publication No. 2013/0313324; -   U.S. Patent Application Publication No. 2013/0313325; -   U.S. Patent Application Publication No. 2013/0341399; -   U.S. Patent Application Publication No. 2013/0342717; -   U.S. Patent Application Publication No. 2014/0001267; -   U.S. Patent Application Publication No. 2014/0002828; -   U.S. Patent Application Publication No. 2014/0008430; -   U.S. Patent Application Publication No. 2014/0008439; -   U.S. Patent Application Publication No. 2014/0025584; -   U.S. Patent Application Publication No. 2014/0027518; -   U.S. Patent Application Publication No. 2014/0034734; -   U.S. Patent Application Publication No. 2014/0036848; -   U.S. Patent Application Publication No. 2014/0039693; -   U.S. Patent Application Publication No. 2014/0042814; -   U.S. Patent Application Publication No. 2014/0049120; -   U.S. Patent Application Publication No. 2014/0049635; -   U.S. Patent Application Publication No. 2014/0061305; -   U.S. Patent Application Publication No. 2014/0061306; -   U.S. Patent Application Publication No. 2014/0063289; -   U.S. Patent Application Publication No. 2014/0066136; -   U.S. Patent Application Publication No. 2014/0067692; -   U.S. Patent Application Publication No. 2014/0070005; -   U.S. Patent Application Publication No. 2014/0071840; -   U.S. Patent Application Publication No. 2014/0074746; -   U.S. Patent Application Publication No. 2014/0075846; -   U.S. Patent Application Publication No. 2014/0076974; -   U.S. Patent Application Publication No. 2014/0078341; -   U.S. Patent Application Publication No. 2014/0078342; -   U.S. Patent Application Publication No. 2014/0078345; -   U.S. Patent Application Publication No. 2014/0084068; -   U.S. Patent Application Publication No. 2014/0097249; -   U.S. Patent Application Publication No. 2014/0098792; -   U.S. Patent Application Publication No. 2014/0100774; -   U.S. Patent Application Publication No. 2014/0100813; -   U.S. Patent Application Publication No. 2014/0103115; -   U.S. Patent Application Publication No. 2014/0104413; -   U.S. Patent Application Publication No. 2014/0104414; -   U.S. Patent Application Publication No. 2014/0104416; -   U.S. Patent Application Publication No. 2014/0104451; -   U.S. Patent Application Publication No. 2014/0106594; -   U.S. Patent Application Publication No. 2014/0106725; -   U.S. Patent Application Publication No. 2014/0108010; -   U.S. Patent Application Publication No. 2014/0108402; -   U.S. Patent Application Publication No. 2014/0108682; -   U.S. Patent Application Publication No. 2014/0110485; -   U.S. Patent Application Publication No. 2014/0114530; -   U.S. Patent Application Publication No. 2014/0124577; -   U.S. Patent Application Publication No. 2014/0124579; -   U.S. Patent Application Publication No. 2014/0125842; -   U.S. Patent Application Publication No. 2014/0125853; -   U.S. Patent Application Publication No. 2014/0125999; -   U.S. Patent Application Publication No. 2014/0129378; -   U.S. Patent Application Publication No. 2014/0131438; -   U.S. Patent Application Publication No. 2014/0131441; -   U.S. Patent Application Publication No. 2014/0131443; -   U.S. Patent Application Publication No. 2014/0131444; -   U.S. Patent Application Publication No. 2014/0131445; -   U.S. Patent Application Publication No. 2014/0131448; -   U.S. Patent Application Publication No. 2014/0133379; -   U.S. Patent Application Publication No. 2014/0136208; -   U.S. Patent Application Publication No. 2014/0140585; -   U.S. Patent Application Publication No. 2014/0151453; -   U.S. Patent Application Publication No. 2014/0152882; -   U.S. Patent Application Publication No. 2014/0158770; -   U.S. Patent Application Publication No. 2014/0159869; -   U.S. Patent Application Publication No. 2014/0160329; -   U.S. Patent Application Publication No. 2014/0166755; -   U.S. Patent Application Publication No. 2014/0166757; -   U.S. Patent Application Publication No. 2014/0166759; -   U.S. Patent Application Publication No. 2014/0166760; -   U.S. Patent Application Publication No. 2014/0166761; -   U.S. Patent Application Publication No. 2014/0168787; -   U.S. Patent Application Publication No. 2014/0175165; -   U.S. Patent Application Publication No. 2014/0175169; -   U.S. Patent Application Publication No. 2014/0175172; -   U.S. Patent Application Publication No. 2014/0175174; -   U.S. Patent Application Publication No. 2014/0191644; -   U.S. Patent Application Publication No. 2014/0191913; -   U.S. Patent Application Publication No. 2014/0197238; -   U.S. Patent Application Publication No. 2014/0197239; -   U.S. Patent Application Publication No. 2014/0197304; -   U.S. Patent Application Publication No. 2014/0203087;

U.S. Patent Application Publication No. 2014/0204268;

-   U.S. Patent Application Publication No. 2014/0214631; -   U.S. Patent Application Publication No. 2014/0217166; -   U.S. Patent Application Publication No. 2014/0217180; -   U.S. patent application Ser. No. 13/367,978 for a Laser Scanning     Module Employing an Elastomeric U-Hinge Based Laser Scanning     Assembly, filed Feb. 7, 2012 (Feng et al.); -   U.S. patent application Ser. No. 29/436,337 for an Electronic     Device, filed Nov. 5, 2012 (Fitch et al.); -   U.S. patent application Ser. No. 13/771,508 for an Optical     Redirection Adapter, filed Feb. 20, 2013 (Anderson); -   U.S. patent application Ser. No. 13/852,097 for a System and Method     for Capturing and Preserving Vehicle Event Data, filed Mar. 28, 2013     (Barker et al.); -   U.S. patent application Ser. No. 13/902,110 for a System and Method     for Display of Information Using a Vehicle-Mount Computer, filed May     24, 2013 (Hollifield); -   U.S. patent application Ser. No. 13/902,144, for a System and Method     for Display of Information Using a Vehicle-Mount Computer, filed May     24, 2013 (Chamberlin); -   U.S. patent application Ser. No. 13/902,242 for a System For     Providing A Continuous Communication Link With A Symbol Reading     Device, filed May 24, 2013 (Smith et al.); -   U.S. patent application Ser. No. 13/912,262 for a Method of Error     Correction for 3D Imaging Device, filed Jun. 7, 2013 (Jovanovski et     al.); -   U.S. patent application Ser. No. 13/912,702 for a System and Method     for Reading Code Symbols at Long Range Using Source Power Control,     filed Jun. 7, 2013 (Xian et al.); -   U.S. patent application Ser. No. 29/458,405 for an Electronic     Device, filed Jun. 19, 2013 (Fitch et al.); -   U.S. patent application Ser. No. 13/922,339 for a System and Method     for Reading Code Symbols Using a Variable Field of View, filed Jun.     20, 2013 (Xian et al.); -   U.S. patent application Ser. No. 13/927,398 for a Code Symbol     Reading System Having Adaptive Autofocus, filed Jun. 26, 2013     (Todeschini); -   U.S. patent application Ser. No. No. 13/930,913 for a Mobile Device     Having an Improved User Interface for Reading Code Symbols, filed     Jun. 28, 2013 (Gelay et al.); -   U.S. patent application Ser. No. 29/459,620 for an Electronic Device     Enclosure, filed Jul. 2, 2013 (London et al.); -   U.S. patent application Ser. No. 29/459,681 for an Electronic Device     Enclosure, filed Jul. 2, 2013 (Chaney et al.); -   U.S. patent application Ser. No. 13/933,415 for an Electronic Device     Case, filed Jul. 2, 2013 (London et al.); -   U.S. patent application Ser. No. 29/459,785 for a Scanner and     Charging Base, filed Jul. 3, 2013 (Fitch et al.); -   U.S. patent application Ser. No. 29/459,823 for a Scanner, filed     Jul. 3, 2013 (Zhou et al.); -   U.S. patent application Ser. No. 13/947,296 for a System and Method     for Selectively Reading Code Symbols, filed Jul. 22, 2013     (Rueblinger et al.); -   U.S. patent application Ser. No. 13/950,544 for a Code Symbol     Reading System Having Adjustable Object Detection, filed Jul. 25,     2013 (Jiang); -   U.S. patent application Ser. No. 13/961,408 for a Method for     Manufacturing Laser Scanners, filed Aug. 7, 2013 (Saber et al.); -   U.S. patent application Ser. No. 14/018,729 for a Method for     Operating a Laser Scanner, filed Sep. 5, 2013 (Feng et al.); -   U.S. patent application Ser. No. 14/019,616 for a Device Having     Light Source to Reduce Surface Pathogens, filed Sep. 6, 2013     (Todeschini); -   U.S. patent application Ser. No. 14/023,762 for a Handheld Indicia     Reader Having Locking Endcap, filed Sep. 11, 2013 (Gannon); -   U.S. patent application Ser. No. 14/035,474 for Augmented-Reality     Signature Capture, filed Sep. 24, 2013 (Todeschini); -   U.S. patent application Ser. No. 29/468,118 for an Electronic Device     Case, filed Sep. 26, 2013 (Oberpriller et al.); -   U.S. patent application Ser. No. 14/055,234 for Dimensioning System,     filed Oct. 16, 2013 (Fletcher); -   U.S. patent application Ser. No. 14/053,314 for Indicia Reader,     filed Oct. 14, 2013 (Huck); -   U.S. patent application Ser. No. 14/065,768 for Hybrid System and     Method for Reading Indicia, filed Oct. 29, 2013 (Meier et al.); -   U.S. patent application Ser. No. 14/074,746 for Self-Checkout     Shopping System, filed Nov. 8, 2013 (Hejl et al.); -   U.S. patent application Ser. No. 14/074,787 for Method and System     for Configuring Mobile Devices via NFC Technology, filed Nov. 8,     2013 (Smith et al.); -   U.S. patent application Ser. No. 14/087,190 for Optimal Range     Indicators for Bar Code Validation, filed Nov. 22, 2013 (Hejl); -   U.S. patent application Ser. No. 14/094,087 for Method and System     for Communicating Information in an Digital Signal, filed Dec. 2,     2013 (Peake et al.); -   U.S. patent application Ser. No. 14/101,965 for High Dynamic-Range     Indicia Reading System, filed Dec. 10, 2013 (Xian); -   U.S. patent application Ser. No. 14/150,393 for Indicia-reader     Having Unitary Construction Scanner, filed Jan. 8, 2014 (Colavito et     al.); -   U.S. patent application Ser. No. 14/154,207 for Laser Barcode     Scanner, filed Jan. 14, 2014 (Hou et al.); -   U.S. patent application Ser. No. 14/165,980 for System and Method     for Measuring Irregular Objects with a Single Camera filed Jan. 28,     2014 (Li et al.); -   U.S. patent application Ser. No. 14/166,103 for Indicia Reading     Terminal Including Optical Filter filed Jan. 28, 2014 (Lu et al.); -   U.S. patent application Ser. No. 14/200,405 for Indicia Reader for     Size-Limited Applications filed Mar. 7, 2014 (Feng et al.); -   U.S. patent application Ser. No. 14/231,898 for Hand-Mounted     Indicia-Reading Device with Finger Motion Triggering filed Apr. 1,     2014 (Van Horn et al.); -   U.S. patent application Ser. No. 14/250,923for Reading Apparatus     Having Partial Frame Operating Mode filed Apr. 11, 2014, (Deng et     al.); -   U.S. patent application Ser. No. 14/257,174 for Imaging Terminal     Having Data Compression filed Apr. 21, 2014, (Barber et al.); -   U.S. patent application Ser. No. 14/257,364 for Docking System and     Method Using Near Field Communication filed Apr. 21, 2014     (Showering); -   U.S. patent application Ser. No. 14/264,173 for Autofocus Lens     System for Indicia Readers filed Apr. 29, 2014 (Ackley et al.); -   U.S. patent application Ser. No. 14/274,858 for Mobile Printer with     Optional Battery Accessory filed May 12, 2014 (Marty et al.); -   U.S. patent application Ser. No. 14/277,337 for MULTIPURPOSE OPTICAL     READER, filed May 14, 2014 (Jovanovski et al.); -   U.S. patent application Ser. No. 14/283,282 for TERMINAL HAVING     ILLUMINATION AND FOCUS CONTROL filed May 21, 2014 (Liu et al.); -   U.S. patent application Ser. No. 14/300,276 for METHOD AND SYSTEM     FOR CONSIDERING INFORMATION ABOUT AN EXPECTED RESPONSE WHEN     PERFORMING SPEECH RECOGNITION, filed Jun. 10, 2014 (Braho et al.); -   U.S. patent application Ser. No. 14/305,153 for INDICIA READING     SYSTEM EMPLOYING DIGITAL GAIN CONTROL filed Jun. 16, 2014 (Xian et     al.); -   U.S. patent application Ser. No. 14/310,226 for AUTOFOCUSING OPTICAL     IMAGING DEVICE filed Jun. 20, 2014 (Koziol et al.); -   U.S. patent application Ser. No. 14/327,722 for CUSTOMER FACING     IMAGING SYSTEMS AND METHODS FOR OBTAINING IMAGES filed Jul. 10, 2014     (Oberpriller et al,); -   U.S. patent application Ser. No. 14/327,827 for a MOBILE-PHONE     ADAPTER FOR ELECTRONIC TRANSACTIONS, filed Jul. 10, 2014 (Hejl); -   U.S. patent application Ser. No. 14/329,303 for CELL PHONE READING     MODE USING IMAGE TIMER filed Jul. 11, 2014 (Coyle); -   U.S. patent application Ser. No. 14/333,588 for SYMBOL READING     SYSTEM WITH INTEGRATED SCALE BASE filed Jul. 17, 2014 (Barten); -   U.S. patent application Ser. No. 14/334,934 for a SYSTEM AND METHOD     FOR INDICIA VERIFICATION, filed Jul. 18, 2014 (Hejl); -   U.S. patent application Ser. No. 14/336,188 for METHOD OF AND SYSTEM     FOR DETECTING OBJECT WEIGHING INTERFERENCES, Filed Jul. 21, 2014     (Amundsen et al.); -   U.S. patent application Ser. No. 14/339,708 for LASER SCANNING CODE     SYMBOL READING SYSTEM, filed Jul. 24, 2014 (Xian et al.); -   U.S. patent application Ser. No. 14/340,627 for an AXIALLY     REINFORCED FLEXIBLE SCAN ELEMENT, filed Jul. 25, 2014 (Rueblinger et     al.); -   U.S. patent application Ser. No. 14/340,716 for an OPTICAL IMAGER     AND METHOD FOR CORRELATING A MEDICATION PACKAGE WITH A PATIENT,     filed Jul. 25, 2014 (Ellis); -   U.S. patent application Ser. No. 14/342,544 for Imaging Based     Barcode Scanner Engine with Multiple Elements Supported on a Common     Printed Circuit Board filed Mar. 4, 2014 (Liu et al.); -   U.S. patent application Ser. No. 14/345,735 for Optical Indicia     Reading Terminal with Combined Illumination filed Mar. 19, 2014     (Ouyang); -   U.S. patent application Ser. No. 14/336,188 for METHOD OF AND SYSTEM     FOR DETECTING OBJECT WEIGHING INTERFERENCES, Filed Jul. 21, 2014     (Amundsen et al.); -   U.S. patent application Ser. No. 14/355,613 for Optical Indicia     Reading Terminal with Color Image Sensor filed May 1, 2014 (Lu et     al.); -   U.S. patent application Ser. No. 14/370,237 for WEB-BASED SCAN-TASK     ENABLED SYSTEM AND METHOD OF AND APPARATUS FOR DEVELOPING AND     DEPLOYING THE SAME ON A CLIENT-SERVER NETWORK filed Jul 2, 2014     (Chen et al.); -   U.S. patent application Ser. No. 14/370,267 for INDUSTRIAL DESIGN     FOR CONSUMER DEVICE BASED SCANNING AND MOBILITY, filed Jul. 2, 2014     (Ma et al.); -   U.S. patent application Ser. No. 14/376,472, for an ENCODED     INFORMATION READING TERMINAL INCLUDING HTTP SERVER, filed Aug. 4,     2014 (Lu); -   U.S. patent application Ser. No. 14/379,057 for METHOD OF USING     CAMERA SENSOR INTERFACE TO TRANSFER MULTIPLE CHANNELS OF SCAN DATA     USING AN IMAGE FORMAT filed Aug. 15, 2014 (Wang et al.); -   U.S. patent application Ser. No. 14/452,697 for INTERACTIVE INDICIA     READER, filed Aug. 6, 2014 (Todeschini); -   U.S. patent application Ser. No. 14/453,019 for DIMENSIONING SYSTEM     WITH GUIDED ALIGNMENT, filed Aug. 6, 2014 (Li et al.); -   U.S. patent application Ser. No. 14/460,387 for APPARATUS FOR     DISPLAYING BAR CODES FROM LIGHT EMITTING DISPLAY SURFACES filed Aug.     15, 2014 (Van Horn et al.); -   U.S. patent application Ser. No. 14/460,829 for ENCODED INFORMATION     READING TERMINAL WITH WIRELESS PATH SELECTON CAPABILITY, filed Aug.     15, 2014 (Wang et al.); -   U.S. patent application Ser. No. 14/462,801 for MOBILE COMPUTING     DEVICE WITH DATA COGNITION SOFTWARE, filed on Aug. 19, 2014     (Todeschini et al.); -   U.S. patent application Ser. No. 14/446,387 for INDICIA READING     TERMINAL PROCESSING PLURALITY OF FRAMES OF IMAGE DATA RESPONSIVELY     TO TRIGGER SIGNAL ACTIVATION filed Jul. 30, 2014 (Wang et al.); -   U.S. patent application Ser. No. 14/446,391 for MULTIFUNCTION POINT     OF SALE APPARATUS WITH OPTICAL SIGNATURE CAPTURE filed Jul. 30, 2014     (Good et al.); -   U.S. patent application Ser. No. 29/486,759 for an Imaging Terminal,     filed Apr. 2, 2014 (Oberpriller et al.); -   U.S. patent application Ser. No. 29/492,903 for an INDICIA SCANNER,     filed Jun. 4, 2014 (Zhou et al.); and -   U.S. patent application Ser. No. 29/494,725 for an IN-COUNTER     BARCODE SCANNER, filed Jun. 24, 2014 (Oberpriller et al.).

In the specification and/or figures, typical embodiments of the invention have been disclosed. The present invention is not limited to such exemplary embodiments. The use of the term “and/or” includes any and all combinations of one or more of the associated listed items. The figures are schematic representations and so are not necessarily drawn to scale. Unless otherwise noted, specific terms have been used in a generic and descriptive sense and not for purposes of limitation. 

1. A method for improving the visibility of a graphical overlay in a barcode scanning application running on a mobile device configured with a camera, the method comprising: capturing an image of a field of view with the camera; rendering a graphical overlay comprising a message on a transparent background, the message covering a specific message area in the image beneath it when the graphical overlay is superimposed on the image; analyzing the message area to derive an image metric; adjusting the pixel values of the message based on the image metric; and displaying the graphical overlay superimposed on the image on the mobile device's display.
 2. The method according to claim 1, wherein the graphical overlay comprises a plurality of messages, each message covering a unique message area, and each message adjusted individually based on its own unique image metric.
 3. The method according to claim 1, wherein the steps of rendering , analyzing, adjusting, and displaying are repeated for each image in a real-time video stream of images.
 4. The method according to claim 1, wherein the message comprises text.
 5. The method according to claim 1, wherein the message comprises a single-colored graphic.
 6. The method according to claim 1, wherein the image metric comprises a quantified value related to the image's intensity and/or color in the message area.
 7. The method according to claim 1, wherein the pixel values of the message comprise an RGB color.
 8. The method according to claim 1, wherein the image metric comprises an average pixel intensity over the message area.
 9. The method according to claim 8, wherein the step of adjusting comprises: comparing the image metric to a threshold; and when the image metric exceeds the threshold then adjusting the message's pixel values to a minimum intensity, or when the image metric does not exceed the threshold then adjusting the message's pixel values to a maximum intensity.
 10. A mobile device comprising: a camera for capturing images of a field of view; a display for displaying (i) images from the camera and (ii) a graphical overlay superimposed on the images, the graphical overlay comprising a message; a memory for storing an indicia-reading application; and a processor configured by the indicia-reading application (i) to analyze the pixel characteristics in areas surrounding the message, and (ii) to adjust a color of the message to improve the message's visibility.
 11. The mobile device according to claim 10, wherein the images comprise a real-time video stream of image frames.
 12. The mobile device according to claim 10, wherein the graphical overlay comprises a plurality of messages on a transparent background.
 13. The mobile device according to claim 10, wherein the message comprises text.
 14. The mobile device according to claim 10, wherein the message comprises a single color graphic.
 15. The mobile device according to claim 10, wherein the pixel characteristics comprise an average pixel intensity.
 16. The mobile device according to claim 10, wherein the pixel characteristics comprise an average color.
 17. The mobile device according to claim 10, wherein the area surrounding a message comprises a message area and a margin area, wherein the message area comprises a rectangular area of pixels containing only the message, and the margin area comprises a frame of pixels surrounding the message area.
 18. The mobile device according to claim 17, wherein the margin area is zero.
 19. An imaging barcode scanner comprising: a camera module for capturing images of a field of view; and a viewfinder module for displaying real-time images from the camera overlaid with messages, wherein the viewfinder module changes the color characteristics of the messages in response to color characteristics of the images.
 20. The imaging barcode scanner according to claim 19, wherein the images comprise a video stream of images and the color characteristics of the graphical messages change in real time.
 21. The imaging barcode scanner according to claim 19, wherein changing the color characteristics of the messages comprises changing the color of each message to contrast maximally with the color of the image behind each message respectively.
 22. The imaging barcode scanner according to claim 19, wherein the messages comprise an aiming graphic to help a user align a barcode. 